package com.xingkeduo.pojo.dto;

import java.util.Arrays;

/**
 * 接受微信公众号实体
 *
 * @Description:
 * @Author:gaozifeng
 * @Date 2019/4/17 11:27
 **/

public class SubscribeDTO extends WechatBaseDTO {

    private String id;
    private String gzhOpenId;
    private String minaOpenId;
    /**
     * 别名
     */
    private String nickname;
    /**
     * 性别
     */
    private String sex;
    /**
     * 语言
     */
    private String language;
    /**
     * 市
     */
    private String city;
    /**
     * 省
     */
    private String province;
    /**
     * 国家
     */
    private String country;
    /**
     * 头像url
     */
    private String headImgUrl;
    /**
     * 关注时间
     */
    private Long subscribeTime;
    /**
     * 性别id
     */
    private Integer sexId;
    /**
     * 备注
     */
    private String remark;
    /**
     * 组id
     */
    private Integer groupId;
    /**
     * 标签ids
     */
    private Long[] tagIds;
    /**
     * 场景id，与生成二维码时的scene_id匹配
     */
    private Integer sceneId;

    //授权类型  1求职者，2用户 3关注公众号
    private int loginType;

    public String getGzhOpenId() {
        return gzhOpenId;
    }

    public SubscribeDTO setGzhOpenId(String gzhOpenId) {
        this.gzhOpenId = gzhOpenId;
        return this;
    }

    public String getMinaOpenId() {
        return minaOpenId;
    }

    public SubscribeDTO setMinaOpenId(String minaOpenId) {
        this.minaOpenId = minaOpenId;
        return this;
    }

    public int getLoginType() {
        return loginType;
    }

    public void setLoginType(int loginType) {
        this.loginType = loginType;
    }

    public String getId() {
        return id;
    }

    public SubscribeDTO setId(String id) {
        this.id = id;
        return this;
    }

    public String getNickname() {
        return nickname;
    }

    public SubscribeDTO setNickname(String nickname) {
        this.nickname = nickname;
        return this;
    }

    public String getSex() {
        return sex;
    }

    public SubscribeDTO setSex(String sex) {
        this.sex = sex;
        return this;
    }

    public String getLanguage() {
        return language;
    }

    public SubscribeDTO setLanguage(String language) {
        this.language = language;
        return this;
    }

    public String getCity() {
        return city;
    }

    public SubscribeDTO setCity(String city) {
        this.city = city;
        return this;
    }

    public String getProvince() {
        return province;
    }

    public SubscribeDTO setProvince(String province) {
        this.province = province;
        return this;
    }

    public String getCountry() {
        return country;
    }

    public SubscribeDTO setCountry(String country) {
        this.country = country;
        return this;
    }

    public String getHeadImgUrl() {
        return headImgUrl;
    }

    public SubscribeDTO setHeadImgUrl(String headImgUrl) {
        this.headImgUrl = headImgUrl;
        return this;
    }

    public Long getSubscribeTime() {
        return subscribeTime;
    }

    public SubscribeDTO setSubscribeTime(Long subscribeTime) {
        this.subscribeTime = subscribeTime;
        return this;
    }

    public Integer getSexId() {
        return sexId;
    }

    public SubscribeDTO setSexId(Integer sexId) {
        this.sexId = sexId;
        return this;
    }

    public String getRemark() {
        return remark;
    }

    public SubscribeDTO setRemark(String remark) {
        this.remark = remark;
        return this;
    }

    public Integer getGroupId() {
        return groupId;
    }

    public SubscribeDTO setGroupId(Integer groupId) {
        this.groupId = groupId;
        return this;
    }

    public Long[] getTagIds() {
        return tagIds;
    }

    public SubscribeDTO setTagIds(Long[] tagIds) {
        this.tagIds = tagIds;
        return this;
    }

    public Integer getSceneId() {
        return sceneId;
    }

    public SubscribeDTO setSceneId(Integer sceneId) {
        this.sceneId = sceneId;
        return this;
    }

    @Override
    public String toString() {
        return "SubscribeDTO{" +
                "id='" + id + '\'' +
                ", gzhOpenId='" + gzhOpenId + '\'' +
                ", minaOpenId='" + minaOpenId + '\'' +
                ", nickname='" + nickname + '\'' +
                ", sex='" + sex + '\'' +
                ", language='" + language + '\'' +
                ", city='" + city + '\'' +
                ", province='" + province + '\'' +
                ", country='" + country + '\'' +
                ", headImgUrl='" + headImgUrl + '\'' +
                ", subscribeTime=" + subscribeTime +
                ", sexId=" + sexId +
                ", remark='" + remark + '\'' +
                ", groupId=" + groupId +
                ", tagIds=" + Arrays.toString(tagIds) +
                ", sceneId=" + sceneId +
                ", loginType=" + loginType +
                '}';
    }
}
